Camera user content synchronization with central web-based records and information sharing system

ABSTRACT

A camera and another device synchronization system, apparatus, signaling, processor-readable medium, and method are provided. As an apparatus, the camera may include a user content synchronization module for automatically synchronizing image data stored as camera records by the camera with central records stored for the user by a central node remote from the camera, the camera records and the central records comprising at least one of photo images or video files, such that changed central record and camera records are update using the most recent records from the other source. Also, television content and gaming device content may be shared and commanded from another device, such as a mobile communication device or camera.

FIELD OF THE INVENTION

The present application is in the field of user content management andsynchronization for cameras and camcorders with user records maintainedat a central node, such as at a web server, and porting and sharing datacontent among other devices.

BACKGROUND OF THE INVENTION

The immense popularity of cameras and camcorders has resulted inever-increasing quantities and types of data that are being stored oncameras and camcorders. Such data includes photo data and other imagedata, video files and video records, and other content stored for theuser at the camera or camcorder as well as at other types of handheldportable device content data.

Digital cameras, camcorders and other video camera equipment store vastamounts of video data. Users often rely on the camera or the camcorderto store their photo images or video files, including potentiallydifficult to replace or precious photos and video records. Thus, if thecamera or camcorder becomes damaged or lost, or if the memory card orother storage medium in the camera, video recording device or camcorderbecomes damaged or lost, then the user's data may be irreplaceably gone.Also, if the user purchases a second camera or video recorder and wishesto view photos or videos previously captured on the first camera orvideo recorder, the user would have to typically undertake a cumbersomeprocess of uploading the photos or video files from the first camera orvideo recorder to a device such as a desktop or laptop computer and thento download the files from the device to the second camera or videorecorder. Also, sometimes the user may wish to view recent photos orvideos taken on the camera or camcorder at home on a desktop or at afriend's house away from home, and it may be cumbersome to upload“manually” the images or the videos each and every time a new image orvideo is captured by the camera. In a similar vein, while traveling theuser may wish to view images or videos captured while the camera isbeing recharged or may wish to view them on a larger monitor or displaythan is available on a typical digital camera or camcorder. Also, a usermay wish to view on his/her camcorder photos that were captured andstored on a camera, or vice versa, or may wish to share photos, videofiles or other content with a family member's or friend's device withouthaving to load “manually” content from one device to another via a thirdintermediary device, such as a desktop/laptop computer, or by firstuploading to some web-based storage location.

SUMMARY OF THE INVENTION

A camera and another device synchronization system, apparatus,signaling, processor-readable medium, and method are provided. As anapparatus, the invention may include a camera that includes a usercontent synchronization module for automatically synchronizing imagedata stored as camera records by the camera with central records storedfor the user by a central node remote from the camera, the camerarecords and the central records comprising at least one of photo imagesor video files, the user content synchronization module including: asynchronization controller configured to initiate a currentsynchronization operation; a state comparator configured to identify, asa changed central record, any central records for the user changed,deleted or added since a last synchronization operation, and toidentify, as a changed camera record, any camera records changed,deleted or added since the last synchronization operation, the lastsynchronization operation being a synchronization operation performedmost recently prior to the current synchronization operation by thecamera; the state comparator being further configured to determinewhether the changed central record is a corresponding record to thechanged camera record, the corresponding record being a record thatrefers to a different version of the same record than another record,and to identify, as a most recently modified record, only one record ofa group consisting of the changed central record and the changed camerarecord; and a command generator configured to generate a command queuecomprising a command to update based on the most recently modifiedrecord, the command being a command sent to the central node to updatethe central records for the user when the most recently modified recordis the changed camera record, and the command being a command to thecamera to update the camera records when the most recently modifiedrecord is the changed central record.

Such a camera of claim may also be provided as or include a camcorderfor recording video data. The user content synchronization module mayinclude a web access module configured to communicate with the centralnode via the internet, for example, content data from the central nodemay be transmitted as XML data.

The camera may include a wireless communication device configured toconnect wirelessly with a Wi-Fi port remote from the camera, and mayinclude a portal for a wired connection with an internet connectiondevice having a web browser for connecting to the central node viainternet, for example using a general packet radio service (GPRS) tocommunicate via web 99.

The synchronization controller may initiate automatically the currentsynchronization operation upon connection with the internet connectiondevice, may initiate automatically the current synchronization operationregularly after a predetermined time period.

The user preference module may receive and store a user-specified timeperiod, wherein the predetermined time period is the user-specified timeperiod and the predetermined time period is at least 30 minutes.

A module, such as a processor-readable medium incorporating a program ofinstructions configured to run at the central node and configured tomanage the central node during the current synchronization is alsocontemplated.

Such a program at the central node may maintain a deleted camera recordsfolder comprising camera records deleted during the currentsynchronization operation and recallable upon user command. In thealternative, the program at the central node may maintain only thumbnailrepresentations of the deleted camera records for the deleted camerarecords folder. Also, the program at the central node may initiate thecurrent synchronization operation by transmitting a synchronizationoperation start command to the user content synchronization module.Further, the program at the central node may include an off-line storagemodule to synchronize the central records with a second user device, thesecond user device being a device other than the camera. The program atthe central node may also include a remote wiper that signals the usercontent synchronization module to delete all camera records.

The camera may also include a user preference module that receives andstores a user designation of a selected set of camera records, theselected set of camera records being exempt from deletion ormodification at the camera during the current synchronization operation.The user preference module may receive and store a user selection of athumbnail synch mode or a full record mode, wherein upon selection ofthe thumbnail synch mode, during the current synchronization operationthe command generator is configured to store only a thumbnailrepresentation of every camera record that remains in the camera afterthe current synchronization operation, and wherein the upon selection ofthe full record mode, during the current synchronization operation thecommand generator is configured to store an entire camera record of allcamera records that remains in the camera after the currentsynchronization operation.

The user content synchronization module may include a thumbnail recallto generate, upon a user selection of a thumbnail representation, arequest for the central node to transmit to the camera the centralrecord corresponding to the thumbnail representation for viewing thecentral record on the camera.

A processor-readable medium incorporating a program of instructionsconfigured to run on an internet connection device having a web browserfor connecting to the central node via the internet is also described,such that the program of instructions manages the internet connectiondevice to connect automatically with the camera via a wired or awireless connection.

The synchronization controller may initiate automatically the currentsynchronization operation upon connection with the internet connectiondevice.

In such a camera, during the current synchronization operation, thecommand generator may generate a thumbnail representation of everycamera record that remains in the camera after the currentsynchronization operation. During the current synchronization operation,the command generator may retain a thumbnail representation of everycamera record deleted from the camera during the current synchronizationoperation.

The synchronization operation module may include a thumbnail recall unitthat generates, upon a user selection of a thumbnail representation, arequest for the central node for transmitting to the camera a full imagerepresentation of the central record corresponding to the thumbnailrepresentation for viewing the central record on the camera.

A position relay module for the camera is also contemplated, that wouldtransmit to the central node for storing in the central records for theuser a current position of the camera. The position relay module maytransmit the current position at a time of the current synchronizationoperation. The position relay module may retrieve the current positionfrom a GPS unit integrated with, or in wired or wireless communicationwith, the camera.

A location-based information module for the camera is also described,for providing guide information to the user based on a current positionof the camera. The current position of the camera may be detected basedon GPS information or based on scene recognition of a scene viewed bythe camera.

Also described is a system, an apparatus, signaling or a set of signals,a processor-readable medium, and a method for synchronizing user contentbetween a first user device and a second user device over the internetvia a central node. As a system, the invention includes a first usercontent synchronization module positioned in the first user device andconfigured to synchronize automatically the user content uploaded viathe internet to the central node from the second user device; a seconduser content synchronization module positioned in the second user deviceand configured to synchronize with the first user device by uploadingvia the internet the user content to the central node; a third usercontent synchronization module positioned at the central node andconfigured to transmit automatically to the first user device the usercontent; and a user preference module configured to receive a usercommand for initiating synchronization by activating the second usercontent synchronization module.

The user preference module may include a processor-readable mediumincorporating a program of instructions positioned in the first userdevice or in the second user device.

The user preference module may initiate the synchronizationautomatically and immediately each time user content is received at thesecond user device, or may initiate the synchronization with regularlyoccurring frequency.

The first user content synchronization module may perform a currenttwo-way synchronization operation such that a first device file of theuser content stored at the first user device is updated automatically byany corresponding user content added, changed or deleted at the centralnode, and such that a central file of user content stored at the centralnode is updated automatically by any corresponding user content added,changed or deleted at the first user device.

Also, the first user content synchronization module may perform thecurrent two-way synchronization operation each time the first devicefile or the central file is added, changed or deleted. The first usercontent synchronization module may perform the current two-waysynchronization operation with regularly occurring frequency.

In addition, in such a system the second user content synchronizationmodule may perform a current two-way synchronization operation such thata second device file of the user content stored at the second userdevice is updated automatically by any corresponding user content added,changed or deleted at the central node, and such that a central file ofuser content stored at the central node is updated automatically by anycorresponding user content added, changed or deleted at the second userdevice.

For example, the first user device may be a mobile communication device,and the second user device may be a television, a gaming device, and/ora mobile communication device.

The first user content synchronization module may also include a virtualdevice controller to receive user commands for controlling the seconduser device and to transmit signals via the central node for controllingthe second user device based on the user commands received.

Thus, the first user device may be a mobile communication device and thesecond user device may be a television.

In addition, the first user device may be a mobile communication device,the second user device may be a gaming device, and the first usercontent synchronization module may include a virtual device controllerto receive user commands for controlling the second user device and totransmit signals via the central node for controlling the second userdevice based on the user commands received.

Other features and advantages of the present invention will becomeapparent from the following description of the invention with referenceto the accompanying Drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic overview of a system illustrating thecamera/camcorder connected to the synchronization server, according toan aspect of Applicant's invention.

FIG. 2 illustrates a synchronization module or application run at thecamera/camcorder, according to an aspect of Applicant's invention.

FIG. 3 illustrates a server synchronization application that is run atthe synchronization server 50 according to an aspect of Applicant'sinvention.

FIG. 4 illustrates a server synchronization run at another user deviceaccording to an aspect of Applicant's invention.

FIG. 5 is an example of a set of operations for implementing asynchronization operation according to an aspect of Applicant'sinvention as illustrated in FIGS. 1-3.

FIG. 6 is a flow chart illustrating an example of steps that mayimplement a two-way synchronization operation according to an aspect ofApplicant's invention.

FIG. 7 illustrates a communication between the camera and the centralnode for authenticating the camera and for the two-way synchronizationoperation according to an aspect of Applicant's invention.

FIG. 8 illustrates records of the user files that may be maintained bythe central node according to an aspect of Applicant's invention.

FIG. 9 is a connection diagram showing an example of connections betweena camera, a personal computer, such as a desktop or a laptop, and thecentral node, according to an aspect of Applicant's invention.

FIG. 10 illustrates other devices that may be connected or synchronizedvia the central node, according to an aspect of Applicant's invention.

FIGS. 11 and 12 illustrate features of the graphical user interfaceprovided at the camera 20, according to an aspect of Applicant'sinvention.

FIG. 13 illustrates features of the graphical user interface provided atthe central node for web-based access, according to an aspect ofApplicant's invention.

With reference to the Drawings, features of the invention are describedin the detailed description section.

DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION

FIG. 1 illustrates structures that may participate in a camera 8 r videorecorder/camcorder synchronization operation according to an embodimentof Applicant's invention. As illustrated in FIG. 1, the synchronizationapplication 130 may be a software product residing in a recorded mediumof a camera or a camcorder 120 for coordinating a synchronizationoperation with a synchronization server 50 at the central node via web99. Synchronization application 130 may be implemented as software,hardware or firmware, using a medium that is insertable into the device,such as a card, or a combination of the foregoing. Synchronizationapplication 130 may be included on the camera/camcorder 120 whenpurchased or may be separately purchased as off the shelf software or asa card medium, or may be downloaded in software form from a vendor ofthe camera/camcorder 120 or from an independent vendor that sells onlythe synchronization application 130 but does not sell thecamera/camcorder. Such a synchronization application 130 may be includedin the retail purchase price of the camera or camcorder 120 or may bepurchased for a lump sum payment for a monthly or other periodicsubscription fee.

Synchronization application 130 may initiate the synchronizationoperation at the expiration of a predetermined time period, at aparticular time of the day, week, month etc. or at a particular hourevery day. The synchronization application 130 includes asynchronization controller 131 that initiates the synchronizationapplication. Further, the synchronization operation may be commenced bythe user or, according to an aspect of Applicant's invention the centralsynchronization application 160 may “push” initiate the synchronizationoperation by transmitting a synch operation request to thesynchronization controller 131 of the synchronization application 130 inthe camera/camcorder 120. Also, synchronization controller 131 mayinitiate the synchronization operation upon the occurrence of an event,such as upon the addition of new user content, or modification ordeletion of existing user content, or upon the occurrence of user actionsuch as snapping a photograph or activating the record function of thevideo camera or camera/camcorder 120.

Camera/camcorder 120 may communicate with the central node via a Wi-Ficonnection 71 a, 71 b if the camera/camcorder 120 is equipped with aWi-Fi communication module or chip or via base station 85A, 96B of awireless cellular network. Alternatively, or in addition to the wired orwireless connection to the Wi-Fi communication and/or the wirelesscellular network, the camera/camcorder 120 may be connected using awired or wireless connection to an internet connection device such as acommunication device 121. Such a device 121 may be a desktop, laptop,television unit or a handheld device or another communication terminalthat includes a modem that is able to communicate with the internet.Camera or camcorder 120 may have one or more network interfaces, forexample, one or more network interface cards (NIC) or a networkcontroller, and the network interface may include a personal areanetwork (PAN) interface providing bluetooth, UWB (ultrawidebandnetwork), IEEE 802.15.4 (for example ZigBee) or the like functionalityfor communication with device 121. For example, GPRS may be used tocommunicate via the web 99.

Also, the synchronization operation may be automatically commenced whenthe camera/camcorder 120 is connected to the communication device 121.According to an aspect of Applicant's invention, all synchronizationoperations may be performed using HTTP and the OSI model as a packetbased RESTful paradigm. The synchronization server 50 may be implementedas a processor cloud that includes a series of processors and mayinclude a synchronization application 160 that provides functionalityfor synchronization at the central node, components of which are shownin FIG. 3. The synchronization server 50 may also be attached to adatabase 51, which too may be implemented as a data storage cloud, or aset of servers connected to the web 99.

Synchronization application 130 may include a user preference module 132that accepts user-specified instructions for commencing thesynchronization operation, so that the user may be empowered to selectto have the synchronization operation start automatically at a certaintime of the day, week or month, upon the expiration of a certaininterval of time, upon connection to the communication device 121, uponconnection to the web 99, when the Wi-Fi communication port of thecamera/camcorder 120 is in a Wi-Fi hotspot enabling communication withWi-Fi connection 71 a, 71 b, or the like. When the synchronizationoperation is commenced by the synchronization application 130, anauthentication may be carried out by authenticator 133 in communicationwith authenticator 163 of synchronization server 50 of the central node.

FIG. 7 is a high-level illustration of the authentication stage and thesynchronization operation according to an aspect of Applicant'sinvention, performed with command issued by the synchronizationapplication 130 residing on the camera/camcorder 120. As illustrated inFIG. 11, when setting up camera or camcorder 120 for synchronizationwith the central node, the user may be prompted to enter a user name 42a and password 42 b and to enter a mobile ID 42 c identifying thiscamera or camcorder 120 for the user. Camera or camcorder 120 may beassigned a unique ID, or, the subscribing user may be assigned a uniqueID and camera or camcorder 120 may be assigned a secondary device ID,for example device ID 1-99, associated with the unique ID of the mobileuser. Thus, many devices may be associated with the user forsynchronization with the central node, and each camera/camcorder orother device may thus share the same user name and password for theconvenience of the user. In the alternative, for added security asillustrated in FIG. 11 the user may be asked to provide the user name 42a and/or the password 42 b associated with the user name and/or themobile ID 42 c in addition to the user name 42 a and password 42 b, eachtime the synchronization operation is to be commenced. An authenticationof camera or camcorder 120 is performed by authenticator 133, whichensures that camera or camcorder 120 is associated with a subscriber ofthe service provided by the synchronization server 50. For example, apublic key and private key approach may be used for authenticating thecamera or camcorder 120 by authenticator 133. Other authenticationschemes are well known and may be used in addition to or instead of theone described.

Although synchronization server 50 is shown as a unit distinct fromwireless provider 80, according to an aspect of Applicant's invention,wireless carrier or network provider 80 may provide the synchronizationservice and may thus house or provide synchronization server 50.According to an aspect of Applicant's invention, user preference module132 may provide an automatic default setting for a timing ofsynchronization operations, and user preference module 132 may have aminimum threshold, for example five minutes, that cannot be overriddenby the user that must elapse between synchronization operations. Also, athirty minute or an hour minimum interval setting may be provided as thepre-set minimum time as the lowest acceptable setting that may be set bythe user for the user preference module 132.

Synchronization application 130 of camera/camcorder 120 may perform atwo-way synchronization operation with synchronization server 50 of thecentral node by comparing any newly added, deleted, manually changed orautomatically updated camera records stored in camera/camcorder 120 withnewly added, deleted, manually changed, or automatically updated camerarecords for the user maintained at synchronization server 50 of thecentral node. As part of the synchronization operation, synchronizationapplication 130 may identify records of camera/camcorder 120 thatcorrespond with the records for the user maintained at synchronizationserver 50 of the central node and generate a command queue for updating,based on the most recent records, the corresponding records maintainedat the other device. That is, when a photo image or video file, or aversion or an edited duplication of a photo image or video file, of thecamera/camcorder 120 is deemed to be newer or to have been deleted,added or changed more recently than a corresponding photo image or avideo file, or a version or an edited duplication of a photo image orvideo file, maintained at synchronization server 50 of the central node,then the corresponding record of synchronization server 50 will beupdated. Conversely, when the photo image or video file, or a version oran edited duplication of a photo image or video file, maintained atsynchronization server 50 is found to be more recent than thecorresponding photo image or video file, or a version or an editedduplication of a photo image or video file, maintained atcamera/camcorder 120, then the corresponding record maintained bycamera/camcorder 120 will be updated as part of the automaticsynchronization operation. Or if a corresponding photo, video file orother record is found to have been more recently deleted than thatphoto, video file or other record may be deleted also on the remainingdevice. It will be understood that other types of synchronizationoperations may be performed to achieve the synchronization discussedherein.

FIG. 6 is a flow chart illustrating an example of a series of stepsperformed as part of a synchronization operation according to an aspectof Applicant's invention. At S1 a timer indicates that a certain timehas elapsed or a particular time of the hour or the day that has beenpredetermined to be the synchronization time has been reached and asynchronization operation is begun at S2. As an alternative toinitiation of the synchronization operation commenced by thesynchronization application 130 residing in the camera/camcorder 120, orin addition to the times of synchronization operation initiated by thesynchronization application 130, according to an aspect of Applicant'sdisclosure the central synchronization application 160 residing at thesynchronization server 50 may also commence in the synchronizationoperation. Accordingly, the central synchronization application 160 ofthe synchronization server 50 would signal the synchronizationcontroller 131 or the synchronization application 130 to commence thesynchronization operation. The subscriber's user name, password and theID of the camera/camcorder are obtained from memory of thecamera/camcorder 120 for authenticating the camera/camcorder 120 by thesynchronization server 50. In addition to or instead of offering apassword from a memory of the camera/camcorder, the user may be asked toprovide a password. Further, synchronization preferences provided by theuser and stored by the user preference module 132 may also be obtainedto control what fields of data are to be synchronized. For example, theuser may wish to synchronize only certain fields of data of the usercontent but not other fields. The user preference profile may provide adefault setting in which all user content stored is automaticallysynchronized unless the user chooses a different setting.

At step S4 the central node is requested to provide all fields of userdata that have been changed since the most recent synchronizationoperation and the data/time of the most recent change or update of eachfield that has been changed. GETcompare may be a method call requestinga list of all records associated with the requesting camera/camcorder120 of the user and maintained at the central node that have beenchanged, added or deleted since the most recent synchronizationoperation.

FIG. 5 illustrates a list of operations performed by the synchronizationapplication 130 as part of a synchronization operation written out aspseudo code. With reference to FIG. 5, FSCL, the File System ChangesLog, is a representation of all the user records of interest on thecamera/camcorder 120. oldFSCL is a list of all records on thecamera/camcorder 120 as they existed before the current synchronizationoperation. Thus, since most devices do not keep a list of recentlydeleted files, the FSCL file is compared with the oldFSCL file todetermine which file or files needs to be deleted by adding it to theDELETEqueue. Thus, the DELETEqueue is a list of records to be deletedfrom the central node, as determined by comparing the oldFSCL with theFSCL. Similarly, DELETEcam is a list of all records that are recentlydeleted on the central node. They are deleted via a DELETE command. TheGETqueue is a list of records that are to be retrieved from the centralnode. Then, FSCL is compared with the GETcompare/oldFSCL. The POSTqueue,on the other hand, is a list of records to be posted using thePOSTcommand to the central node. This list is determined by comparingthe FSCL with the GETcompare/oldFSCL. Alternatively, all user contentdata from the central node may be requested and stored temporarily bythe mobile terminal.

At S5 in FIG. 6, fields that have been changed may be stored temporarilyby the synchronization application 130 in the camera/camcorder 120.Similarly, at F8 a File System Changes Log is generated or read out.This log represents all fields of the user content stored on thecamera/camcorder 120 that have changed since the most recentsynchronization operation.

Such a File Systems Changes Log may be generated in several ways, forexample, a background process may be running that adds each file systemchange in the camera/camcorder 120 to the log, or at run time during thesynchronization operation (or just before the synchronization operation)the files may be scanned and those fields that have changed since themost synchronization operation may be added to the log. The latterapproach may be more applicable for the first synchronization operationand would be less susceptible to a catching changed field if the programhad been turned off.

At S7 the corresponding fields of the records obtained from the centralnode and the file system changes log are determined. Such correspondingfields of the user record may be obtained, for example, if each field ofuser content is indexed by a searchable key. Then, at S10, for eachcorresponding record a determination is made as to which version, theversion that had been maintained by the central node or the version thathad been maintained by the camera/camcorder is the most recent version.This determination is made, in this example, based on the date/timestamp associated with each field of the user data of the GETcompareresults and the File System Changes Log. If at S10 the versionmaintained at synchronization 50 is determined to be more recent, then acommand is generated and added to a command queue to update contentstored by the camera/camcorder 120. Alternatively, if thecamera/camcorder 120 version is determined to be more recent for thatfield of the user data content, then a command is generated and added tothe command queue to request that synchronization server 50 update thedata stored at the central node, including by the database or the datastorage cloud 51 (S11).

As shown in S13 the commands on the command queue are executed one afteranother. As shown in the flowchart of FIG. 6, two command queues may begenerated, one at S12 containing the GET commands for obtaining data ofthe central node and updating the camera/camcorder 120 user content, andone at S14 containing the POST commands for updating the central nodeuser content. At S16 a determination is made as to whether there was anerror. If a GET error was made then the command is reposted to theGETqueue and if a POST error is made then the command is put back on thePOSTqueue S14. It will be understood that while described using methodcalls of one computer language, many other types of command syntax arepossible. Also, while the synchronization operation is described withreference to the approach illustrated in FIG. 6, it will be readilyunderstood that many other types of synchronization operation are knownthat will make possible the update of a field of user data that has beenchanged by a user, in order to automatically update with new informationthat has been added, or to remove data has been deleted, to a lessrecent corresponding field.

At S20 commands effecting residual records are added to queues ofresidual commands, a residual get queue is generated at S18 and aresidual post queue is generated at S19 and these command queues areadded to respective command queues performed at the next synchronizationoperation, except that if a field effected by such residual command ismore subsequently updated after the current synchronization operationthen residual commands are not executed. At S21 the timer for startingthe next synchronization operation is reset, such that, for example if asynchronization operation is set to be commenced every hour than thetimer is set for an hour starting from the completion of the currentsynchronization operation. According to an aspect of Applicant'sinvention, user preference module 132 may provide an automatic defaultsetting for a timing of synchronization operations, and user preferencemodule 132 may have a minimum threshold, for example five minutes, thatmust elapse between synchronization operations. Also, a thirty minute oran hour minimum interval setting may be provided as the minimum timethat may be set by the user by user preference module 132.

A basic outline of steps executed during a synchronization operation isillustrated in FIG. 7. At “Sign Up” an SMS (short message servicemessage) or other such communication may be sent to the camera/camcorder120 with a link to install the application. At “Compare”camera/camcorder 120 sends a command to the central node (Web), whichreplies with XML data required to synchronize. At “Synch from Camera”camera/camcorder 120 passes data to the central node, with the centralnode-transmitting confirmation. At “Synch from Web” the camera/camcorder120 is requesting data from the central node. “Change Settings” isprovided to update user account details from the camera/camcorder 120.

FIG. 8 illustrates a scheme for organizing user content data at thecentral node (sometimes referred to as the web-based system) in relationto camera/camcorder 120. FIG. 9 illustrates an example of acommunication scheme between the client device and a central node servercommunicating via HTTPS via web 99, and also illustrates a PC terminal90 that may be used by the subscriber to monitor data stored.

Central synchronization application 160 of synchronization server 50 ofthe central node may include a file saver 170 that automatically savesall photo images or video files deleted from camera/camcorder 120 aspart of the current synchronization operation and that generates aspecial folder for such saved files. Thus, the user may wish later torecall such a deleted file from the saved file folder. Such a featurecould be useful in case the user mistakenly deleted the photo images orvideo files at camera/camcorder 120 and then during the synchronizationoperation such deleted files would have been permanently removed fromboth camera/camcorder 120 and synchronization server 50.

Synchronization application 130 at camera/camcorder 120 may include userpreference module 132 that receives a user designation of a first set ofimages that the user may also wish to keep stored at camera/camcorder120, and the user may wish to exempt all such images or video recordsfrom being deleted or modified during synchronization operations. Forexample, the user may have a photo displayed as a screen saver, or agroup of photos to be shown at camera/camcorder 120 for friends that theuser wishes to exempt from synchronization or from deletion.

In addition, the user may wish to select a thumbnail mode, in whichduring the synchronization operation all photo images or video filesthat remain in camera/camcorder 120 after the synchronization operationare maintained only as thumbnails at the camera. Depending on the sizeof the memory of camera/camcorder 120, a very high number of suchthumbnail representations could be stored at the camera, thus greatlyincreasing the number of images that may be held. Further,synchronization application 130 may include a thumbnail recall 137 thataccepts a user selection of a selected thumbnail representation storedon the camera/camcorder 120 and generates a request transmitted to thesynchronization server 50 for providing the full photo image or fullvideo file corresponding to the thumbnail representation selected by theuser. Thus, at any time the user may view the photo image or video fileat camera/camcorder 120 returned from the synchronization server 50.Such a full photo image may be stored by camera/camcorder 120indefinitely, only while it is being viewed or played at thecamera/camcorder 120 after it is received or for some user-definedperiod. In this way, a “virtual memory” of camera/camcorder 120 may beextended a great deal by the use of only thumbnail representationsmaintained at camera/camcorder 120.

In the alternative, user preference module 132 may accept the userselection of a full representation synchronization mode, such that thesynchronization operation leaves an entire photo image or video file forall the records of the camera that remain in the camera after thecurrent synchronization operation.

In addition, the photo images, video files or the thumbnailrepresentations may be organized or may be accessible usinguser-specified filters such as date, time or location of capture of thephoto image or video file. In addition, the photo images, video files orthumbnail representations may be tagged and separated into groups basedon associations of records thought desirable by the user. Thus, the usermay wish to tag for a custom folder all photo images, video files or athumbnail representation of a certain person, place or the like. In asimilar vein, the user may select for synchronization with the centralnode only photo images or video files contained within a particularfolder or those tagged and separated into a particular group, groupedby, for example date/time of capture, or location of capture, person orpersons depicted in the photo image or video file, type of photo (e.g.portrait, day or night, flash or no flash, landscape, black and white orcolor, or the like).

Also, user preference module 132 may allow the user to select a mode inwhich photo images or video files deleted from the camera during thesynchronization operation are nevertheless maintained in a specialthumbnail folder of camera/camcorder 120. Thus, camera/camcorder 120nevertheless could retain a thumbnail representation of photo images orvideo files that were automatically deleted or changed as part of thesynchronization operation in the special thumbnail folder.

Further, according to a further aspect of the disclosure, if the userloses the camera/camcorder 120 the user may initiate a remote data wipeof all photo images, video files, thumbnail representations, userpreferences or other user content or information stored in thecamera/camcorder 120 by initiating a data wipe operation at thesynchronization server 50. Thus, central synchronization application 160may provide a command issued from local controller 161 for deleting allrecords stored on camera/camcorder 120 upon a special instructionreceived via web 99 from the terminal 90 of the user. Thus, the user mayvisit synchronization server 50, for example, via the web interface, incase camera/camcorder 120 becomes lost or damaged and initiate a requestfrom the synchronization server 50 to delete all user records stored bythe camera/camcorder 120. According to an aspect of the disclosure, sucha “data wipe” operation would terminate further synchronizationoperations between camera/camcorder 120 and the central node so as toprevent loss of data held for the user at the central node. In this way,if the camera/camcorder 120 is found by an unscrupulous person, all userdata stored at the camera/camcorder 120 will have been deleted. However,should the user obtain a replacement camera/camcorder 120, then userdata stored at the central node can be downloaded to the replacementcamera/camcorder 120 through an ordinary synchronization operation orusing a special synchronization operation initiated by the user withoutburdening user without having to replace the data “manually.”

Also, camera 120 may be connected via a wired or wireless connection ormaybe integrated with a GPS device and may automatically transmit aposition of the camera/camcorder 120 to synchronization server 50.Synchronization server 50 may store the location of camera/camcorder 120and may manage a file that contains a running list of most recentcamera/camcorder 120 locations. In addition, a location ofcamera/camcorder 120 may be obtained using methods other than a GPSdevice, for example, using Wi-Fi connection port 71A/71B triangulationor base station 86A/86B triangulation, or direct signaling provided byWi-Fi connection 71A/71B or base station 86A/86B for informing of thelocation. For example, GPRS (general packet radio service) may be usedas a means of communication via the web 99 and the position of thecamera/camcorder 120 may be performed accordingly. Also, location alsomay be determined based on a scene recognized by camera/camcorder 120using scene recognition software.

Similarly, the user may use another terminal 90, such as desktopterminal, laptop, television unit, portable communication device or ahandheld device to view, or manage photo images or video filesmaintained at the synchronization server 50 of the central node. Thus,the user may wish to add, delete, change manually, such as using a photomanipulation or video file manipulation application, the photo imagesand video files maintained at the synchronization server 50 of thecentral node. Such changes, additions or deletions would then bereflected in the camera 120 content after the next synchronizationoperation.

Terminal 90 may include a monitor as part of the physical userinterface, such as a CRT television monitor, flat screen monitor, OLED,LCD, LED or plasma display, front projection or rear projection displayor the like. Similarly, camera/camcorder 120 may have one or more suchmonitors or displays integrated therewith or integrated withcommunication device 121.

Also shown in FIG. 1 is auxiliary device 95, which may be a keyboard,computer, gaming device, headphone connected to user terminal 90 using awired or wireless connection. Thus auxiliary device 95 may have its owndisplay that controls and its own storage such that data stored at userterminal 90 may also be saved at auxiliary device 95.

FIG. 11 illustrates a graphical user interface for interacting withcamera/camcorder 120 for authenticating the user and specifying thedevice associated with the user.

FIG. 12 illustrates a graphical user interface for interacting withcamera/camcorder 120 to allow the user to specify what types of files tosynchronize with the central node. Thus, user may wish to choosesettings 25 such as videos 40 for synching or may select more than oneor all of such settings. Also, FIG. 12 illustrates that user is promptedby a prompt such as “SynchHowOften?” prompt to input a response such as“30 minutes” as response 41 a. User may interact with camera/camcorder120 via the arrow keys and buttons provided at 26, using “soft buttons”provided on interactive display, using a trackball or mouse, using voicecommands recognized by specialized voice recognition software, via aninterface provided by communication device 121 at which camera/camcorder121 is “docked” or with which it is in wired or wireless communication,or the like.

Also shown in FIG. 1 is a database 51, which may be implemented as adata storage cloud, for storing user records. The synchronization server50 may be implemented as a processor cloud. Database 51 may be connecteddirectly to the synchronization server 50 or may be connected to asynchronization server 50 via web 99. The synchronization server 50 maybe provided as a stand-alone service that is purchased or subscribed toby the user of the camera/camcorder 120, or the synchronization server50 and the database 51 may be provided by the manufacturer or seller ofthe camera/camcorder 120 as part of the purchase of the camera/camcorder120. Such services may be provided for an additional lump-sum payment orfor periodic subscription fee.

Synchronization server 50 may be accessed by a parent or guardian tomonitor user content of camera/camcorder 120 because the central nodewould automatically synchronize with camera/camcorder 120. Thus byaccessing, for example, via a website synchronization server 50 of thecentral node, the parent could monitor the photo images or video filesstored on the camera/camcorder 120. Also, synchronization server 50 mayinclude user settings to control user content, such as porn filters orother filters for user content, and may flag or prevent the storage ofall such objectionable content.

In addition, the user may interface using user interface 91 with userterminal 90, connected via the web 99 for communication with thesynchronization server 50, and user terminal 90 may also store all orsome of the photo images or video files stored on camera/camcorder 120.According to this aspect of the invention, during each synchronizationoperation, or following each synchronization operation betweencamera/camcorder 120 and synchronization server 50 of the central node,user terminal 90 may also be updated and synchronized with the mostrecent version of the photo images and video files.

In addition or in the alternative, user terminal 90 may have a separatesynchronization application 130 that separately synchronizes with thecentral node at regular intervals or at other specified times so thatthe user terminal 90 maintains the most recent version of all photoimages or video files. In addition, or in the alternative, user terminal90 may be synchronized each time user terminal 90 is activated or eachtime user terminal 90 is connected to the web 99. User terminal 90 mayalso be connected to another device 95 via a wired or wirelessconnection, and this other device may be a television, a second cameraor camcorder, a handheld device, a mobile communication, such as acellular phone, notebook, or a tablet terminal, and all information thatis monitored on the terminal 90 may also be monitored, or may bemonitored exclusively, on monitored device 95.

Also contemplated is a camera-to-camera photo image or video filesharing feature. Two or more users may wish to share remotely photos orvideo files upon the request of one of the users. For example, a firstuser may wish to initiate a request to a second user to access all orsome designated group of the photo images or video files of the seconduser. If the second user grants permission, then the first user isgranted permission to view those photo images or video files. Such arequest from the first user and such a response from the second user maybe input using synchronization server 50 at the central node andtransmitted to each camera or can be input to the camera/camcorder 120and transmitted to the second camera directly or via the central node.Such a request may be made for a one-time share or may be a request toshare automatically all such for user content in the future.

Also, a site recognition feature is contemplated in which people,companies, states, governments, organizations or other entities cansubmit various images, including photos or video files of certainlocations or landmarks, that are of geographical, historical, politicalor other interest. When a user points camera 120 toward a landmark ofgeographic or historic significance, the camera may use recognitionsoftware to identify the landmark and a message can be provided to theuser on the camera screen, with text identifying the name and otherimportant information about the landmark. The recognition may beperformed either using recognition software or based on a determinationthat the current location of the camera 120 is at or approximately atthe location of the registered landmark of geographic or historicalsignificance. The message to the user on the camera may be in the formof a text message or may be a semi-opaque overlay of the landmark. Whiledescribed as a landmark or a building, it would be understood that sucha landmark can consist of landscape of ecological or historicalsignificance, such as a nature preserve or a park.

Similarly, the information uploaded and preset may be information ofinterest to the user about a particular location, building or landmarkand when a determination is made that the camera 120 is at or near thelandmark, the information could be presented to the user just as wouldbe presented by a brochure or a tour guide. Also, other related pointsof interest nearby could be made available or presented to the user viacamera 120.

Also contemplated is a system in which many such devices are allsynchronized at the central node such that upon selection by the user ofthe device, or of types of content of a device, all such designated usercontent may be synchronized at the central node to all other selecteddevices or to any device designated by the user. Thus, the user may wishto view pictures or video data or recordings captured by camera 120A,120B on the mobile device 20A, 20B, and in addition or instead, on thetelevision 220A, 220B.

The camera may include a landmark guide information module 139D thatstores information about various sites, such as landmarks or othergeographic or architectural points of significance or sights andincludes information, such as would be useful for a tourist or a visitorof the site, or information about neighboring sites to be recommendedfor the user, such as other similar or related landmarks, restaurants orhotels, airports or the like, which may be provided to the user in theform of textual information, textual marquis at the bottom of the camerascreen or as an opaque or semi-opaque overlay over the site. Forexample, the overlay may include a picture or other image orrepresentation of a building that is associated with or corresponds tothe recognized site, taken during a historically significant time ortaken from an advantageous or aesthetically pleasing perspective orangle. In the alternative, such information may be streamed from thecentral node based on the site recognized by the recognition software139C at the camera 120A, 120B. Also, the camera may include a module forfiltering photographs or video recordings, such as filtering such photosor video recordings by date, time or location of capture or according towhether the image or video file is of a person or a landscape or a groupof people or whether it was taken at night or by day or in the U.S. oroutside the U.S. or other such criteria.

Also, the user may also be able to tag each photo or video file withsuch indexing information so that such photos or video files may beassociated together and recalled as a group or recalled individuallybased on a search entered by the user and keyed by such tagginginformation.

Also, synchronization may be performed automatically each time usercontent for any designated synchronized device is changed, updated,added or deleted. Such event-driven synchronization may be performed inaddition to or instead of synchronization at set time intervals or atpre-specified times. Thus, the user may wish to perform synchronizationwith a device such as a camera 120A, 120B, which is less frequently usedor for which data stored is less frequently changed, added or deleted,or for which content files include larger amounts of data and thusrequire more bandwidth and storage space, only upon the occurrence of acontent changing event, such as the addition, deletion or the editing ofuser content. Also, the user may wish to port user data or other contentimmediately only in one direction between designated devices. Forexample, the user may wish to view television content received by thetelevision 22A on the mobile terminal 20, but not to view content of themobile device on the television 220A and thus, the user may set for onlyone way synchronization.

Also, while shown as mobile communication devices 20A and 20B, cameras120A, 120B, televisions 220A, 220B and television auxiliary device 221,other types of devices may also be used to view synchronized content orto supply synchronized content. For example, such platforms may includeprinter devices, medical surgical equipment, electronic pens, radiodevices, electronic shavers/electronic personal care device, lightingsystems/fixtures, refrigerators microwave ovens, security systems (homeor business), air conditioning systems, heating systems, electronic bookreaders, home or business entertainment systems, headphones, gamingdevices, electronic billboards/signs, cook top stoves, electronicpicture frames, elevators, electronic tables, dishwashers, washer/dryerlaundry units, small to mid size kitchen appliances, electronicplanners, electronic calendars, car computer systems and dashboarddisplays, wall mounted electric systems, aviation systems, boatingcomputer systems, electronic toothbrushes, digital recorders, DVDplayer, blue ray players, cable-satellite set-top box, device remotecontrol units, handheld “sky caddie” (golf device), GPS golf cart withor without “sky caddie” built in home/auto alarm systems, car rearcamera/obstacle detector, portable automobile TV, on-board bicycle racercomputer, landline phones, electronic doors, paper shredder, electricreclining chair, treadmills and workout bikes, vending machines,ticketing machines, toll/commuter fair machines or turnpikes pedometerbuilt into shoe, cash register, coin counting machines, DVD rentingunits, self checkout machines.

For example, the user may wish to watch television content received ator stored at television 220A on mobile communication device or cellulartelephone 20A or on camera 120A. Thus, the user may wish to initiate aporting of data received at or stored at television 220A viasynchronization server 50 by initiating a one-way synchronization inwhich any new content received by television 220A is transmitted via thecentral node to the mobile communication device 20A and/or to the camera120A. In addition, or in the alternative, user may initiate such one-waysynchronization by setting a command at television 220A to transmit inreal time, or upon the completion of receipt of an entire televisionprogram or other video file to the synchronization server 50 via the web99. The synchronization server 50 would automatically forward suchcontent to the mobile communication 20A and/or the camera 120A. In thealternative, synchronization server 50 may store any such televisioncontent or video file until the file is complete or the televisionprogram is finished uploading and then transmit the video file ortelevision program to the mobile telephone 20A and/or to camera 120A.

In addition, synchronization application 130, illustrated in FIG. 2 alsomay include a virtual device controller 139B provided in the mobilecommunication device 20A and/or camera 120A to receive user commandintended for directing or controlling television 220A so that the usermay be allowed to transmit commands via the central node to thetelevision 220A from the mobile communication device 20A and/or camera120A to change the channel, program a video recorder integrated with orprovided separate from television 220A, change a reception frequency ortiming of a transmission from television 220A, change a volume settingor the like. While described in the above-described example as a mobilecommunication device 20A or as a camera 120A, it would be understoodthat other devices may be provided for receiving the ported data, suchas one or more of the devices above-listed.

Also, user may wish to view mobile communication user content ontelevision 220A or other such device and may wish to add, change,update, or delete such user content or the communication device 20A. Forexample, user may wish to view picture data, video files, or other imagedata, or change or monitor contact information stored on mobile device20A on camera 220A or on such other device. This may be accomplished bytransmitting such mobile device content data via synchronization server50 to the remote device 220A. This may be accomplished with some regularfrequency, for example as part of a one-way or a two-way synchronizationbetween mobile communication device 20A and television 220A, or whenrequested by a user of television 220A or such one-way or two-waysynchronization may occur automatically each time any mobilecommunication data is added, changed, deleted or updated at the mobilecommunication device 20A.

Similarly, the user may wish to view and/or participate in a game playedat a gaming device 221 connected with or integrated to television 220Bfrom a remote location using the mobile communication device 20A and/orcamera 120A. Thus, the user may wish to play a game currently playing ongaming device 221, and may also wish to send instructions for directingthe ball or in other ways directing action in the game using theinterface provided at mobile communication device 20A and/or camera120A. Thus, virtual device controller 139B of synchronizationapplication 130 may receive such user commands intended for directingaction at a gaming device 221 and may then transmit them viasynchronization server 50 over the web 99 to a gaming device 221 and/orto connected television 220B.

Thus, synchronization as described in the foregoing description andthumbnailing of picture and video files may provide for reduced relianceon the memory of the camera/camcorder 120 and/or may require a smallermemory of the camera/camcorder 120, and a more streamlinedcamera/camcorder 120 may be obtainable.

Also, user preference module 132 may receive user commands forcontrolling what devices are to be included in the synchronization groupand for controlling what types of user content files are to be includedin the synchronization group. Thus, user may wish to select a number ofdevices for synchronization, all of which are to share all data using atwo-way synchronization at regular intervals or upon the change,deletion or addition of any file at any of the synchronization groupdevices. In the alternative, user may wish to a select certain device,for example camera/camcorder 120, for one-way synchronization, such thatpicture data or video files captured by camera/camcorder 120 are backedup by synchronization server 50 at regular intervals or upon thecapture, change or deletion or such picture data or video files. At thesame time, user may wish not to have two-way synchronization if userwishes to set the camera/camcorder 120 not receive user content fromother devices for synchronization. In the alternative, user may wish tosynchronize video files of the camera/camcorder 120 but not photographicimages, or vice-versa.

Although the present invention has been described in relation toparticular embodiments thereof, many other variations and modificationsand other uses will become apparent to those skilled in the art. It ispreferred, therefore, that the present invention be limited not by thespecific disclosure herein, but only by the appended claims.

1. A camera including a user content synchronization module forautomatically synchronizing image data stored as camera records by thecamera with central records stored for the user by a central node remotefrom the camera, the camera records and the central records comprisingat least one of photo images or video files, the user contentsynchronization module comprising: a synchronization controllerconfigured to initiate a current synchronization operation; a statecomparator configured to identify, as a changed central record, anycentral records for the user changed, deleted or added since a lastsynchronization operation, and to identify, as a changed camera record,any camera records changed, deleted or added since the lastsynchronization operation, the last synchronization operation being asynchronization operation performed most recently prior to the currentsynchronization operation by the camera; the state comparator beingfurther configured to determine whether the changed central record is acorresponding record to the changed camera record, the correspondingrecord being a record that refers to a different version of the samerecord than another record, and to identify, as a most recently modifiedrecord, only one record of a group consisting of the changed centralrecord and the changed camera record; and a command generator configuredto generate a command queue comprising a command to update based on themost recently modified record, the command being a command sent to thecentral node to update the central records for the user when the mostrecently modified record is the changed camera record, and the commandbeing a command to the camera to update the camera records when the mostrecently modified record is the changed central record.
 2. The camera ofclaim 1, wherein the camera is a camcorder configured to record videodata.
 3. The camera of claim 1, wherein the camera is a digital cameraconfigured to record photo image data.
 4. The camera of claim 1, whereinthe camera is a device configured to record both video data and photoimage data.
 5. The camera of claim 1, wherein the user contentsynchronization module comprises a web access module configured tocommunicate with the central node via the internet.
 6. The camera ofclaim 5, wherein the camera receives content data from the central nodeas XML data.
 7. The camera of claim 1, wherein the camera comprises awireless communication device configured to connect wirelessly with aWi-Fi port remote from the camera.
 8. The camera of claim 1, wherein thecamera comprises a portal for a wired connection with an internetconnection device having a web browser for connecting to the centralnode via internet.
 9. The camera of claim 8, wherein the synchronizationcontroller is configured to initiate automatically the currentsynchronization operation upon connection with the internet connectiondevice.
 10. The camera of claim 1, wherein the synchronizationcontroller is configured to initiate automatically the currentsynchronization operation regularly after a predetermined time period.11. The camera of claim 1, further comprising a user preference moduleconfigured to receive and to store a user-specified time period, whereinthe predetermined time period is the user-specified time period and thepredetermined time period is at least 30 minutes.
 12. In combination,the camera of claim 1 and a processor-readable medium incorporating aprogram of instructions configured to run at the central node andconfigured to manage the central node during the currentsynchronization.
 13. The combination of claim 12, wherein the program ofinstructions at the central node is configured maintain a deleted camerarecords folder comprising camera records deleted during the currentsynchronization operation and recallable upon user command.
 14. Thecombination of claim 12, wherein the program of instructions at thecentral node is configured to maintain only thumbnail representations ofthe deleted camera records for the deleted camera records folder. 15.The combination of claim 12, wherein the program of instructions at thecentral node is configured to initiate the current synchronizationoperation by transmitting a synchronization operation start command tothe user content synchronization module.
 16. The combination of claim12, wherein the program of instructions at the central node furthercomprises an off-line storage module configured to synchronize thecentral records with a second user device, the second user device beinga device other than the camera.
 17. The combination of claim 12, whereinthe program of instructions at the central node further comprises aremote wiper configured to signal the user content synchronizationmodule to delete all camera records.
 18. The camera of claim 1, furthercomprising a user preference module configured to receive and to store auser designation of a selected set of camera records, the selected setof camera records being exempt from deletion or modification at thecamera during the current synchronization operation.
 19. The camera ofclaim 1, further comprising a user preference module configured toreceive and to store a user selection of a thumbnail synch mode or afull record mode, wherein upon selection of the thumbnail synch mode,during the current synchronization operation the command generator isconfigured to store only a thumbnail representation of every camerarecord that remains in the camera after the current synchronizationoperation, and wherein the upon selection of the full record mode,during the current synchronization operation the command generator isconfigured to store an entire camera record of all camera records thatremains in the camera after the current synchronization operation. 20.The camera of claim 19, wherein the user content synchronization modulefurther comprises a thumbnail recall unit configured to generate, upon auser selection of a thumbnail representation, a request for the centralnode to transmit to the camera the central record corresponding to thethumbnail representation for viewing the central record on the camera.21. In combination, the camera of claim 1 and a processor-readablemedium incorporating a program of instructions configured to run on aninternet connection device having a web browser for connecting to thecentral node via the internet, the program of instructions configured tomanage the internet connection device to automatically connect with thecamera via a wired or a wireless connection.
 22. The combination ofclaim 21, wherein the synchronization controller is configured toinitiate automatically the current synchronization operation uponconnection with the internet connection device.
 23. The camera of claim1, wherein during the current synchronization operation, the commandgenerator is configured to generate a thumbnail representation of everycamera record that remains in the camera after the currentsynchronization operation.
 24. The camera of claim 1, wherein during thecurrent synchronization operation, the command generator is configuredto retain a thumbnail representation of every camera record deleted fromthe camera during the current synchronization operation.
 25. The cameraof claim 1, wherein the synchronization operation module furthercomprises a thumbnail recall unit configured to generate, upon a userselection of a thumbnail representation, a request for the central nodefor transmitting to the camera a full image representation of thecentral record corresponding to the thumbnail representation for viewingthe central record on the camera.
 26. The camera of claim 1, furthercomprising a position relay module configured to transmit to the centralnode for storing in the central records for the user a current positionof the camera.
 27. The camera of claim 26, wherein the position relaymodule is configured to transmit the current position at a time of thecurrent synchronization operation.
 28. The camera of claim 26, whereinthe position relay module is configured to retrieve the current positionfrom a GPS unit integrated with, or in wired or wireless communicationwith, the camera.
 29. The camera of claim 1, further comprising alocation-based information module configured to provide guideinformation to the user based on a current position of the camera. 30.The camera of claim 29, wherein the current position of the camera isdetected based on GPS information, based on cellular networktriangulation, based on scene recognition of a scene viewed by thecamera, or based on some combination of the foregoing.
 31. The camera ofclaim 29, wherein the camera comprises sight recognition software torecognize a spot viewed by the camera and to provide the guideinformation based on the spot recognized.
 32. The camera of claim 29,wherein the guide information is stored in the camera or downloaded fromthe central node.
 33. The camera of claim 29, wherein the guideinformation is provided as a textual marquis or as an overlay.
 34. Thecamera of claim 29, wherein the guide information includes informationabout surrounding structures or locations other than the sightimmediately recognized.
 35. The camera of claim 1, further comprising afiltering module configured to allow a user to recall saved photos orvideo files based on a date, time, location, or a combination of thedate, time and location of capture of the image or video file.
 36. Thecamera of claim 35, further comprising a tagging module configured totag an image or a video file and to file the image or video file so asto be later recallable by the user by the tag.
 37. The camera of claim36, wherein the tagging module provides tags including date, time,location of capture, or a combination of date, time and location ofcapture.
 38. A system for porting user content between a first userdevice and a second user device over the internet via a central node,the system comprising: a first user content synchronization modulepositioned in the first user device and configured to synchronizeautomatically files of user content uploaded via the internet to thecentral node from the second user device by determining whether any ofthe files of user content at the central node are more recently changed,deleted or added than corresponding files of user content stored at thefirst user device; a second user content synchronization modulepositioned in the second user device and configured to synchronize withthe first user device by uploading via the internet the files of usercontent to the central node by determining whether any of the files ofuser content at the second user device are more recently changed,deleted or added than corresponding files of user content stored at thecentral node; a third user content synchronization module positioned atthe central node and configured to transmit automatically to the firstuser device the user content; and a user preference module configured toreceive a user command for initiating synchronization by activating atleast one of the first user content synchronization module, the seconduser content synchronization module, or the third synchronizationmodule.
 39. The system of claim 38, wherein the user preference modulecomprises a processor-readable medium incorporating a program ofinstructions positioned in the first user device, and the userpreference module activates the first user content synchronizationmodule to initiate synchronization.
 40. The system of claim 38, whereinthe user preference module comprises a processor-readable mediumincorporating a program of instructions positioned in the second userdevice, and the user preference module activates the second user contentsynchronization module to initiate synchronization.
 41. The system ofclaim 38, wherein the user preference module comprises aprocessor-readable medium incorporating a program of instructionspositioned in the central node, and the user preference moduleactivating the central node for initiating synchronization.
 42. Thesystem of claim 38, wherein the third user content synchronizationmodule informs the first user content synchronization module to initiatethe synchronization when any files of the user content are uploaded fromthe second user device.
 43. The system of claim 38, wherein the firstuser device comprises a headphone configured to play audio informationand is configured to be worn by a user's head.
 44. The system of claim38, wherein the second user device comprises a headphone configured toplay audio information and is configured to be worn by a user's head.45. The system of claim 38, wherein the first user contentsynchronization module provides a list of the files of the user contentto the user.
 46. The system of claim 38, wherein the first user devicecomprises a camera or camcorder.
 47. The system of claim 38, wherein thesecond user device comprises a camera or camcorder.
 48. The system ofclaim 38, wherein the first user device comprises a mobile communicationdevice.
 49. The system of claim 38, wherein the user preference moduleis configured to initiate the synchronization automatically andimmediately each time user content is received at the second userdevice.
 50. The system of claim 38, wherein the first user contentsynchronization module is configured to initiate the synchronizationwith regularly occurring frequency.
 51. The system of claim 38, whereinthe first user content synchronization module is configured to perform acurrent two-way synchronization operation such that a first device fileof the user content stored at the first user device is updatedautomatically by any corresponding user content added, changed ordeleted at the central node, and such that a central file of usercontent stored at the central node is updated automatically by anycorresponding user content added, changed or deleted at the first userdevice.
 52. The system of claim 51, wherein the first user contentsynchronization module is configured to perform the current two-waysynchronization operation each time the first device file or the centralfile is added, changed or deleted.
 53. The system of claim 51, whereinthe first user content synchronization module is configured to performthe current two-way synchronization operation with regularly occurringfrequency.
 54. The system of claim 51, wherein the second user contentsynchronization module is configured to perform a current two-waysynchronization operation such that a second device file of the usercontent stored at the second user device is updated automatically by anycorresponding user content added, changed or deleted at the centralnode, and such that a central file of user content stored at the centralnode is updated automatically by any corresponding user content added,changed or deleted at the second user device.
 55. The system of claim38, wherein the first user device is a mobile communication device. 56.The system of claim 38, wherein the second user device comprises atelevision.
 57. The system of claim 38, wherein the second user devicecomprises a gaming device.
 58. The system of claim 38, wherein thesecond user device comprises a mobile communication device.
 59. Thesystem of claim 38, wherein the first user content synchronizationmodule further comprises a virtual device controller configured toreceive user commands for controlling the second user device and totransmit signals via the central node for controlling the second userdevice based on the user commands received.
 60. The system of claim 38,wherein the first user device is a mobile communication device andwherein the second user device comprises a television.
 61. The system ofclaim 38, wherein the first user device is a mobile communicationdevice, wherein the second user device comprises a gaming device, andwherein the first user content synchronization module further comprisesa virtual device controller configured to receive user commands forcontrolling the second user device and to transmit signals via thecentral node for controlling the second user device based on the usercommands received.